Method, computer program and system for optimising routes provided by navigation systems

ABSTRACT

A method of controlling a navigation system. Navigation systems which are capable of gathering historical information concerning routes taken by a number of individual vehicles are known. Such systems rely on a central database to analyse and store the historical information of all the participating vehicles. The central database can therefore suggest an improved route to a vehicle based on the analysis of the information gathered from the participating vehicles. However, as the central database analyses historical information received from a number of different types of vehicles (e.g. delivery trucks, taxis, motorbikes etc.), the routes suggested by the system are often inappropriate for a specific type of vehicle. For example, a route which is appropriate for a motorbike is often not appropriate for a truck, and vice versa. A method of controlling a navigation system is provided which builds up historical information of routes taken by a vehicle and uses this information to provide an appropriate route for the vehicle based upon deviations from suggested routes stored upon a mobile computer unit of the navigation system of the vehicle.

FIELD OF THE INVENTION

The present invention relates to the information technology field. Morespecifically, the invention relates to navigation systems.

BACKGROUND ART

Navigation systems have become increasingly popular in recent years. Anavigation system consists of a small electronic device that aids adriver of a vehicle to reach a desired destination. Navigation systemsare particularly useful for people visiting areas they are not familiarwith.

Navigation systems operate by knowing where the navigation unit ispositioned by using Global Positioning Satellites (GPS) and by applyingthat position to a context provided by a map and by a desireddestination. The navigation system can then suggest how the driver of avehicle (for example) should act (e.g. turn right in 500 metres) to getto the desired destination according to possible route alternatives(defined in the map) and personal preferences (e.g. avoiding motorways).

The context can be augmented using additional information such asbroadcasts of traffic information (traffic jams on certain routes). U.S.Pat. No. 5,610,821 discloses a system for determining optimal vehicleroutes using current traffic flow information. The system receivescurrent traffic flow information from a number of individual vehiclesand uses this information to identify when a traffic flow problemexists. Once the system has identified that a traffic problem exists, itre-calculates a new route based on the information received from thevehicles. The system therefore continuously monitors the traffic flow ofa road network and provides alternative routes when traffic flowproblems are identified.

The system of U.S. Pat. No. 5,610,821 relies upon receiving dynamicfeedback traffic flow information from the individual vehicles, butoften local knowledge is the only way to choose one route over anotherin terms of efficiency. Local knowledge, for example, could be that carsoften double-park on a particular street, reducing its effective width,road conditions, such as potholes, and so on.

Navigation systems exist which are capable of gathering historicalinformation concerning routes taken by a number of individual vehicles.Such systems rely on a central database to analyse and store thehistorical information of all the participating vehicles. The centraldatabase can therefore suggest an improved route to a vehicle based onthe analysis of the information gathered from the participatingvehicles. However, such systems are often troublesome and costly toadministrate. Furthermore, as the central database analyses historicalinformation received from a number of different types of vehicles (e.g.delivery trucks, taxis, motorbikes etc.), the routes suggested by thesystem are often inappropriate for a specific type of vehicle. Forexample, a route which is appropriate for a motorbike is often notappropriate for a truck, and vice versa.

Navigation systems, such as those discussed above, are therefore limitedin that they are expensive to administrate and often cannot suggest theoptimal route to the driver of a specific type vehicle.

SUMMARY OF THE INVENTION

According to the present invention there is provided a method ofcontrolling a navigation system. The method including the steps of:inputting an indication of a destination location to a mobile computerunit; monitoring the current location of the mobile computer unit;outputting a suggested route for reaching the destination location fromthe current location along a route selected on a predefined map, whereinthe suggested route is determined by the mobile computer unit and takesinto consideration traffic data stored on the mobile computer unit;monitoring deviations from the suggested route; and using the monitoreddeviations to improve the traffic data stored on the mobile computerunit.

Another aspect of the present invention provides a computer program forperforming the above-described method.

A still further aspect of the present invention provides a systemincluding means for performing the steps of the above-described method.

A still further aspect of the present invention provides mobile computerunit for a navigation system, the mobile computer unit comprising: meansfor inputting an indication of a destination location to the mobilecomputer unit; means for storing traffic data; means for calculating asuggested route for reaching the destination location from a currentlocation along a route selected on a predefined map, wherein thesuggested route is calculated by the mobile computer unit and takes intoconsideration traffic data stored on the mobile computer unit; means foroutputting the suggested route; means for monitoring deviations from thesuggested route; means for improving the traffic data using themonitored deviations.

Further embodiments of the invention are provided in the appendeddependent claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention itself, as well as further features and the advantagesthereof, will be best understood with reference to the followingdetailed description, given purely by way of a non-restrictiveindication, to be read in conjunction with the accompanying drawings, inwhich:

FIG. 1 is a schematic block diagram of a data processing system in whichthe method of the invention is applicable;

FIG. 2 shows the functional blocks of a generic computer system;

FIG. 3 shows a system suitable for implementing the present invention;

FIG. 4 shows exemplary applications of the solution according to anembodiment of the invention; and

FIG. 5 shows a diagram describing the flow of activities relating to anillustrative implementation of the method.

DETAILED DESCRIPTION

With reference in particular to FIG. 1, a data processing system 100with distributed architecture implementing a Navigation System, isdepicted. The system 100 includes multiple endpoints 105, which aregrouped into different sets. The endpoints 105 can be mobile units,vehicle units and more generally any kind of data processing systemcapable of receiving signal from the Central Navigation Server. Theendpoints 105 are connected to the Central Navigation Server 115 throughwireless networks 110-120 (for example, a GPS or GSM networks). TheCentral Navigation Server 115 maintains a repository where traffic datamaps and routes are collected and managed.

As shown in FIG. 2, a generic computer of the system (e.g. mobilecomputer unit, central server, router, transmitter) is denoted with 150.The computer 150 is formed by several units that are connected inparallel to a system bus 153. In detail, one or more microprocessors(mP) 156 control operation of the computer 150; a RAM 159 is directlyused as a working memory by the microprocessors 156, and a ROM 162stores basic code for a bootstrap of the computer 150. Peripheral unitsare clustered around a local bus 165 (by means of respectiveinterfaces). Particularly, a mass memory consists of a hard-disk 168 anda drive 171 for reading CD-ROMs 174. Moreover, the computer 150 includesinput devices 177 (for example, a keyboard and a mouse), and outputdevices 180 (for example, a monitor and a printer). A Network InterfaceCard (NIC) 183 is used to connect the computer 150 to the network. Abridge unit 186 interfaces the system bus 153 with the local bus 165.Each microprocessor 156 and the bridge unit 186 can operate as masteragents requesting an access to the system bus 153 for transmittinginformation. An arbiter 189 manages the granting of the access withmutual exclusion to the system bus 153.

Similar considerations apply if the system has a different topology, orit is based on other networks. Alternatively, the computers have adifferent structure, include equivalent units, or consist of other dataprocessing entities (such as PDAs, mobile phones, and the like). In anycase, the solution of the invention is also suitable to be used in asystem wherein the control of the workstations is decentralized, or evenin a stand-alone computer. For example, in a in-vehicle satellitenavigation system or a hand-held satellite navigation system.

FIG. 3 shows a system suitable for implementing the present invention.As shown in FIG. 3, there is provided a constellation of navigationsatellites 311, 312 and 313 belonging for example to the GPS or Galileosystems. There is further provided a vehicle 400 carrying a navigationsystem 416. The navigation system includes a mobile computer unit 416 awhich includes a user interface unit 416 b, a satellite positioningreceiver 331 and cellular communication device 341. The satellitepositioning receiver 331 receives timing data transmitted by thenavigation satellites 311, 312 and 313 and thereby determines theinstantaneous position of the vehicle 400 in which it is located. Thereis further provided a cellular telephone network 360, which is capableof bi-directional communication with the cellular communication device341. There is further provided a navigation processor 370, connected tothe cellular telephone network 360 as well as a map database 381 and ajourney database 382.

The system typically works by a user in the vehicle 400 entering arequest for navigation information to a particular destination into thevehicle's mobile computer unit 416 a. The satellite positioning receiver331 processes signals received from the navigation satellites 311, 312and 313 so as to determine the position of the vehicle 400. The cellularcommunication device 341 is used to transmit the request data from themobile computer unit 416 a and the position data from the satellitepositioning receiver 331 to the navigation processor 370 by means of thecellular telephone network 360. On receiving at least a present positionand destination information, the navigation processor 370 implements arouting algorithm with reference to the map database 381 so as todetermine a preferred route between the present position of the vehicle400 and the destination. This route may be added to a central journeydatabase 382.

When a large number of vehicles of different types submit similarjourney information to a navigation system having a central database,the improved route suggested the system is often inappropriate for aspecific type of vehicle. For example, if the journey informationsubmitted to the system comes mainly from motorbikes, then the improvedroute suggested by the system may not be appropriate for trucks.

Thus according to the present invention, a method of controlling anavigation system is provided which provides optimal route suggestionsto specific vehicles.

In the following example a journey is described between one node andanother, by convention the journey starts at the first node mentionedand terminates at the second. Obviously, the journey as described mayform parts of larger journeys.

FIG. 4 exemplifies an embodiment of the invention. In FIG. 4 there isshown a road network within which the vehicle 400 is travelling. Thenetwork comprises a starting node 410, a finishing node 412 and aplurality of roads 414 a-414 d. The starting node 410 defines thestarting point of the journey and the finishing node 412 defines thefinishing point of the journey.

As illustrated in FIG. 4, the vehicle 400 has requested navigationinformation from the starting node 410 to the finishing node 412. Thecomputer unit 416 a performs a calculation in order to determine theoptimal route for the vehicle 400. The computer unit 416 a typicallytries to determine the quickest route from starting node 410 tofinishing node 412 and suggests this as the optimal route for thevehicle 400. However, the computer unit 416 a is also adapted to takeinto consideration predetermined user preferences when determining theoptimal route for the vehicle 400, e.g. avoid motorways etc.

As illustrated in FIG. 4, the computer unit 416 a has suggested that thevehicle 400 takes roads 414 a then 414 b and then 414 c as the optimalroute to get from starting node 410 to finishing node 412.

During the journey, the computer unit 416 a continuously monitors thelocation of the vehicle 400 and records any deviations which the vehicle400 takes from the suggested route. For example, in the present exampleillustrated in FIG. 4, although the computer unit 416 a has suggestedtaking roads 414 a, 414 b and 414 c, the computer unit 416 a notes thatthe vehicle actually takes roads 414 a, 414 d and 414 c in order to getfrom starting node 410 to finish node 412. The noted deviation is storedon the mobile computer unit 416 a.

The vehicle 400 may deviate from the suggested route because the driverhas a local knowledge of the area. Local knowledge could be that carsoften double-park on a particular street thus reducing its width, roadconditions such as potholes etc. Also, depending on the type of vehiclebeing driven, e.g. motorbike, truck etc., the driver may exercise thislocal knowledge to avoid certain roads.

For each repeated journey, i.e. each time the vehicle 400 requestsnavigation information from starting node 410 to finishing node 412, thecomputer unit 416 a notes any deviations from the suggested route andstores them in its internal memory. In this way the mobile computer unit416 a gathers historical information on the actual route taken by thevehicle 400 instead of the originally suggested route.

Once the computer unit 416 a builds up a sufficient body of historicalinformation about the journey from starting node 410 to finish node 412,it then begins to take into consideration the deviations from thesuggested route when determining the suggested route.

For example, the computer unit 416 a compares the number or times adeviation from the suggested route was taken with the number of timesthe suggested route was taken. If the number of times a deviation fromthe suggested route is at least 85% then the computer unit 416 a cangive an option of taking the originally suggested route, or taking thedeviation from this route. In this way the vehicle 400 knows that thereis an alternative option to the originally suggested route. The computerunit 416 a may present the alternative route to the user of the vehicle400 as a route which has been taken more commonly than the originalsuggested route.

Alternatively, once the computer unit 416 a has determined that theratio between the number of times a deviation from the suggested routeis taken and the number of times the suggested route was taken satisfiesa predetermined criteria, the computer 416 a may consider this deviatedroute to be the optimal route and modify the originally suggested routeto match the newly determined optimal route. In this way, the computerunit 416 a always presents the optimal route as the suggested route forthe vehicle 400.

In this way the computer unit 416 a can determine an optimal route basedon local knowledge of the area. It should be appreciated that thecomputer unit 416 a can continuously compare any deviations fromsuggested routes and present alternative routes for the vehicle 400 ormodify original routes to match newly determined routes.

With reference to FIG. 5, the logic flow of controlling the navigationsystem according to an embodiment of the invention is illustrated with amethod 500. The method begins at the black start circle 510. Continuingto block 512 an indication of a destination location is input to themobile computer unit 416 a. At step 514 the current location of themobile computer unit 416 a is monitored. At step 516 the computer unit416 a determines a suggested route for reaching the destination locationfrom the current location along a route selected on a predefined map. Atstep 518 the computer unit 416 a checks to see if there are any recordeddeviations from this previously suggested route. If there are norecorded deviations from this previously suggested route, the methodmoves on to step 520 where the computer unit 416 a outputs the suggestedroute. At step 522 the computer unit 416 a monitors the vehicle alongthe suggested route and records any deviations from the suggested route.The mobile computer unit 416 a stores any deviations from the suggestedroute thereon for future use. If there are recorded deviations from thispreviously suggested route, the method moves on to step 524 where thecomputer 416 a considers whether the suggested route should be modifiedto match a previously deviated route. If the computer unit 416 aconsiders that the suggested route should not be modified the methodmoves to step 520. If the computer unit 416 a considers that thesuggested route should be modified the method moves to step 526 wherethe computer unit 416 a outputs the modified suggested route. At step528 the computer unit 416 a monitors the vehicle along the modifiedsuggested route and records any deviations from the modified suggestedroute. The mobile computer unit 416 a stores any deviations from themodified suggested route thereon for future use.

Although only one particular journey has been illustrated and describedhere, it should be appreciated that the mobile computer unit 416 a canmonitor deviations from a plurality of repeated journeys and determineoptimal routes for each one based on gathered local knowledge.

The navigation system 416 of the present invention is intended to buildup historical information of optimal routes of individual vehicles basedon deviations from originally suggested routes. The navigation system416 is intended to gather local knowledge of the optimal routes for theparticular vehicle and to provide these optimal routes as alternativesto the user of the vehicle, or to modify original routes based on therecorded deviations. As the optimal routes are particular the vehicle inwhich the navigation system 416 is fitted, the problem of getting aninappropriate route is avoided.

The navigation system 416 is particularly suited for use in commercialvehicles such as delivery trucks, taxis etc. where the vehicle is oftena local vehicle but the driver is not familiar with the area. In thisinstance the navigation system 416 is able to provide the driver of thevehicle with optimal routes for journeys around the area.

The navigation system 416 is a relatively inexpensive item which can beeasily installed and maintained in a large number of vehicles.

It should also be appreciated that the mobile computer unit 416 a maystore a number of deviations from the suggested route, i.e. a number offragments of a complete route. In this manner the complete route takenneed not be stored, but rather only any deviations from the suggestedroute.

Furthermore, the decision the mobile computer unit 416 a makesconcerning when to modify the originally suggested route is based on a‘policy’ defined within the system/user preferences. For example, if thesame deviation is noted in over 25% of route fragment navigation, or ifthe same deviation is noted in five successive journeys, the mobilecomputer unit 416 a will modify the originally suggested route toincorporate the previously recorded deviations therein.

Although the navigation system 416 has been described above as beingused in a vehicle 400, it should be appreciated that the navigationsystem 416 could be a hand-held unit.

Although the threshold for considering a deviated route to be theoptimal route has been described above as approximately 85%, it shouldbe appreciated that the navigation system 416 can be completelycustomisable set any desired threshold value. Also, instead of thethreshold for considering a deviated route to be an optimal route beinga ratio between deviated routes and suggested routed, the navigationsystem 416 may be configured to consider a deviated route to be theoptimal route once the number of times the deviated route has been takenhas reached a predetermined value.

While the invention has been particularly shown and described withreference to a preferred embodiment, it will be understood that variouschanges in form and detail may be made therein without departing fromthe spirit, and scope of the invention.

1. A method of controlling a navigation system including the steps of:inputting an indication of a destination location to a mobile computerunit; monitoring the current location of the mobile computer unit;outputting a suggested route for reaching the destination location fromthe current location along a route selected on a predefined map, whereinthe suggested route is determined by the mobile computer unit and takesinto consideration traffic data stored on the mobile computer unit;monitoring deviations from the suggested route; and using the monitoreddeviations to improve the traffic data stored on the mobile computerunit.
 2. The method according to claim 1, wherein the determination ofthe suggested route includes comparing the number of times a deviationfrom the suggested route was taken with the number of times thesuggested route was taken.
 3. The method according to claim 2, whereinthe traffic data stored on the mobile computer unit is updated when thenumber of times a deviation from the suggested route was taken exceeds apredetermined threshold.
 4. The method according to claim 1, wherein thestep of outputting the suggested route for reaching the destinationlocation includes the additional step of considering one or morepredetermined user preferences.
 5. A computer program for performing amethod for controlling a navigation system when the computer program isexecuted on a data processing system, the method comprising: inputtingan indication of a destination location to a mobile computer unit;monitoring the current location of the mobile computer unit; outputtinga suggested route for reaching the destination location from the currentlocation along a route selected on a predefined map, wherein thesuggested route is determined by the mobile computer unit and takes intoconsideration traffic data stored on the mobile computer unit;monitoring deviations from the suggested route; and using the monitoreddeviations to improve the traffic data stored on the mobile computerunit.
 6. (canceled)
 7. A mobile computer unit for a navigation system,the mobile computer unit comprising: means for inputting an indicationof a destination location to the mobile computer unit; means for storingtraffic data; means for calculating a suggested route for reaching thedestination location from a current location along a route selected on apredefined map, wherein the suggested route is calculated by the mobilecomputer unit and takes into consideration traffic data stored on themobile computer unit; means for outputting the suggested route; meansfor monitoring deviations from the suggested route; means for improvingthe traffic data using the monitored deviations.